const modulesFiles = require.context('./', true, /\.js$/)

const modules = modulesFiles.keys().reduce((modules, modulePath) => {
  const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1')
  // console.log('moduleName', moduleName, 'modulePath', modulePath)

  const value = modulesFiles(modulePath)
  // console.log('module value', value)

  modules[moduleName] = value.default
  // console.log('modules', modules)

  return modules
}, {})

// console.log('modules', modules)
delete modules.index

// const loopModules = modules => {
Object.keys(modules).map(key => {
  if (key.includes('/')) {
    const splitKeyList = key.split('/')
    modules[splitKeyList[0]] = {}
  }
})

Object.keys(modules).map(key => {
  if (key.includes('/')) {
    const splitKeyList = key.split('/')

    const firstModule = modules[splitKeyList[0]]

    firstModule[splitKeyList[1]] = modules[key]
    delete modules[key]
  }
})

export default { ...modules }
